package clue

import (
	"time"
)

type GfyxCluePo struct {
	Id              int64
	CompanyName     string
	OrganizingCode  string
	Status          int32
	Source          int32
	SourceId        string
	SourceTitle     string
	ProvinceCode    string
	CityCode        string
	ContactName     string
	ContactMobile   string
	ContactPosition string
	FromDevice      string
	CreatedBy       int64
	CreatedOn       time.Time
	ModifiedBy      int64
	ModifiedOn      time.Time
	IsDeleted       int32
}

func (p GfyxCluePo) TableName() string {
	return "gfyx_clue"
}

type GfyxClueContactPo struct {
	Id          int64
	ClueId      int64
	Name        string
	CompanyName string
	Position    string
	Mobile      string
	CreatedBy   int64
	CreatedOn   time.Time
	ModifiedBy  int64
	ModifiedOn  time.Time
	IsDeleted   int32
}

func (p GfyxClueContactPo) TableName() string {
	return "gfyx_clue_contact"
}

type GfyxClueTrackerPo struct {
	Id         int64
	ClueId     int64
	UserId     int64
	IsInCharge int32
	CreatedBy  int64
	CreatedOn  time.Time
	ModifiedBy int64
	ModifiedOn time.Time
	IsDeleted  int32
}

func (p GfyxClueTrackerPo) TableName() string {
	return "gfyx_clue_tracker"
}

type GfyxClueFollowRecordPo struct {
	Id               int64
	ClueId           int64
	ContactId        int64
	FollowType       int32
	FollowStatus     string
	ClueStatus       int32
	BeforeClueStatus int32
	Content          string
	TalkContent      string
	FromSource       int32
	CreatedBy        int64
	CreatedOn        time.Time
	ModifiedBy       int64
	ModifiedOn       time.Time
	IsDeleted        int32
}

func (p GfyxClueFollowRecordPo) TableName() string {
	return "gfyx_clue_follow_record"
}

type GfyxClueWithInChargeUser struct {
	GfyxCluePo
	InChargeUserId int64
}
